package com.ruoyi.project.service;

import java.util.List;
import com.ruoyi.project.domain.A05Project;
import com.ruoyi.project.domain.A08PaymentReceipt;
import com.ruoyi.project.vo.A05Project.A05ProjectCodeResult;

import javax.servlet.http.HttpServletResponse;

/**
 * 项目库Service接口
 * 
 * @author WorrilessGo
 * @date 2025-11-18
 */
public interface IA05ProjectService 
{
    /**
     * 查询项目库
     * 
     * @param projectId 项目库主键
     * @return 项目库
     */
    public A05Project selectA05ProjectByProjectId(String projectId);

    /**
     * 查询项目库列表
     * 
     * @param a05Project 项目库
     * @return 项目库集合
     */
    public List<A05Project> selectA05ProjectList(A05Project a05Project);


    public List<String> selectA05ProjectCode(A05Project a05Project);

    /**
     * 新增项目库
     * 
     * @param a05Project 项目库
     * @return 结果
     */
    public int insertA05Project(A05Project a05Project);

    /**
     * 修改项目库
     * 
     * @param a05Project 项目库
     * @return 结果
     */
    public int updateA05Project(A05Project a05Project);

    /**
     * 批量删除项目库
     * 
     * @param projectIds 需要删除的项目库主键集合
     * @return 结果
     */
    public int deleteA05ProjectByProjectIds(String[] projectIds);

    /**
     * 删除项目库信息
     * 
     * @param projectId 项目库主键
     * @return 结果
     */
    public int deleteA05ProjectByProjectId(String projectId);

    int batchInsertA05Project(List<A05Project> list);

    int updateA05ProjectList(List<A05Project> a05Projects);

    void downloadProjectFiles(List<String> projectIds, HttpServletResponse response);

    String summary(A08PaymentReceipt a08PaymentReceipt);
}
